using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace SCHD
{
    public partial class WFEstado_Mant : TDV.Controles.Base.WinForm.BaseForm_Tipo01
    {
        #region Propiedades
        EBEstado Estado = null;
        LBEstado LEstado = null;
        LBEstado EstMod = new LBEstado();
        #endregion
        public WFEstado_Mant()
        {
            InitializeComponent();
        }
        protected void Buscar()
        {
       try
       {
        LEstado.Filtros.Tipo = ((NCItems)CboTipoEstado.SelectedItem).Valor;
        LEstado.Buscar();
        dgEstado.DataSource = null;
        dgEstado.DataSource = LEstado;
        dgEstado.Refresh();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        }

        private void WFEstado_Mant_Load(object sender, EventArgs e)
        {
            TxtAbrev.CharacterCasing = CharacterCasing.Upper;
            TxtEstado.CharacterCasing = CharacterCasing.Upper;
            Estado = new EBEstado();
            LEstado = new LBEstado();
            #region Combos
            CboTipoEstado.Items.Add(new NCItems("Equipo", "000"));
            CboTipoEstado.Items.Add(new NCItems("Pendientes", "001"));
            CboTipoEstado.SelectedIndex = 0;
            #endregion
            Buscar();
            LblMensaje.Text ="Se encontraron "+LEstado.Count.ToString()+" Registros";

            
            
            
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            DialogResult = DialogResult.Cancel;
        }

        private void btnQuitar_Click(object sender, EventArgs e)
        {
            try
            {
                DialogResult x = MessageBox.Show("Esta seguro que desea Eliminar este Item ?", "Aviso",MessageBoxButtons.YesNo,MessageBoxIcon.Information);
                if (x == DialogResult.Yes)
                {
                    Estado.CodigoEstado =((EBEstado)dgEstado.CurrentRow.DataBoundItem).CodigoEstado.ToString();
                    Estado.Eliminar(); 
                }
                Buscar();
            }
            catch (Exception)
            {
                throw;
            }
            
        }

        private void btnAdicionar_Click(object sender, EventArgs e)
        {
            try
            {
                Estado.Tipo = ((NCItems)CboTipoEstado.SelectedItem).Valor.ToString();
                Estado.DescripcionEstado = TxtEstado.Text.ToUpper().ToString();
                Estado.Abreviado = TxtAbrev.Text.ToUpper().ToString();
                Estado.Grabar();
                Buscar();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            
        }

        private void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {
                foreach (EBEstado est in EstMod)
                {
                    Estado.CodigoEstado = est.CodigoEstado;
                    Estado.Abreviado = est.Abreviado;
                    Estado.DescripcionEstado = est.DescripcionEstado;
                    Estado.Grabar();
                }
                
                Buscar();
                LblMensaje.Text = "Se registro Correctamente...!";
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            //DialogResult x = MessageBox.Show("Desea continuar en el formulario?", "Aviso", MessageBoxButtons.YesNo);
            //if (x == DialogResult.Yes)
            //{
            //    return;
            //}
            //else
            //{
            //    DialogResult = DialogResult.OK;
            //}

            
        }

        private void dgEstado_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
           
            Estado.CodigoEstado = ((EBEstado)dgEstado.CurrentRow.DataBoundItem).CodigoEstado.ToString();
            Estado.DescripcionEstado = ((EBEstado)dgEstado.CurrentRow.DataBoundItem).DescripcionEstado.ToString();
            Estado.Abreviado = ((EBEstado)dgEstado.CurrentRow.DataBoundItem).Abreviado.ToString();
            EstMod.Nuevo(Estado);
        }

        private void CboTipoEstado_SelectedIndexChanged(object sender, EventArgs e)
        {
            Buscar();
        }
    }
}

